/**
 * 发送GET异步请求
 * @param {string} url 请求地址
 * @param {string} params 请求参数
 * @param {Function} callabck 回调函数
 * @param {Object} headers 请求头
 * @param {string} dataType 返回数据类型
 */
function get(url,params={},callabck,headers={},dataType='json'){
    const xhr=new XMLHttpRequest
    xhr.onreadystatechange=()=>{
        if(xhr.readyState===4){
            if(xhr.status===200){
                // let res=JSON.parse(xhr.responseText)
                // console.log(res)
                let res=xhr.responseText
                switch(dataType){
                    case 'json':
                        res=JSON.parse(res)
                        break;
                    default:
                        break;
                }
                callabck(res)

            }else{
                console.log('错误',xhr.status)
            }
            
        }
    }
    let tempArr=[]
    for(let key in params){
        tempArr.push(`${key}=${params[key]}`)
    }
    xhr.open('get',`${url}?${tempArr.join('&')}`)
    for(let key in headers){
        xhr.setRequestHeader(key,headers[key])
    }
    xhr.send(null)
}



/**
 * 发送POST异步请求
 * @param {string} url 请求地址
 * @param {string} params 请求参数
 * @param {Function} callabck 回调函数
 * @param {Object} headers 请求头
 * @param {string} dataType 返回数据类型
 */
function post(url,params={},callabck,headers={},dataType='json'){
    const xhr=new XMLHttpRequest
    xhr.onreadystatechange=()=>{
        if(xhr.readyState===4){
            if(xhr.status===200){
                let res=xhr.responseText
                switch(dataType){
                    case 'json':
                        res=JSON.parse(res)
                        break;
                    default:
                        break;
                }
                callabck(res)
            }else{
                console.log('错误',xhr.status)
            }
        }
    }
    let tempArr=[]
    for(let key in params){
        tempArr.push(`${key}=${params[key]}`)
    }
    xhr.open('post',url)
    xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')
    for(let key in headers){
        xhr.setRequestHeader(key,headers[key])
    }
    xhr.send(`${tempArr.join('&')}`)
}